package cn.earas.ip;

import java.util.*;

public class Data {
    public static final String VERSION = "V1.0";
    public static final String START_TEXT = "代理IP检测" + VERSION + "\n"
		    		+ "===========================================\n"
		    		+ "使用说明：\n"
		    		+ "1.线程数越大，运行速度越快，但会消耗更多的资源。\n"
		    		+ "2.最大响应时间越小，可用IP访问速度越快，但可用结果数会变少。\n"
		    		+ "3.程序运行完成后，可以选择将可用结果导出，支持自定义分隔符。\n"
		    		+ "4.勾选检测地区信息选项，会检测IP的所属地区和服务商，但是会降低检测\n"
		    		+ "的速度，如非必要，不推荐使用。\n"
//		    		+ "5.程序可使用结果数据设置本地代理，支持自定义时间间隔的自动IP切换。\n"
		    		+ "\n"
		    		+ "更多信息请查看 关于->帮助。\n"
		    		+ "===========================================\n"
		    		+ "本程序仅用作学习交流使用，请勿用作非法操作。";
    public static final String HELP_TEXT = "代理IP检测" + VERSION + "\n"
		    		+ "=============================================\n"
		    		+ "帮助说明：\n"
		    		+ "1.线程数越大，运行速度越快，但会消耗更多的资源。\n"
		    		+ "2.最大响应时间越小，可用IP访问速度越快，但可用结果数会变少。\n"
		    		+ "3.程序运行完成后，可以选择将可用结果导出，支持自定义分隔符。\n"
		    		+ "4.勾选检测地区信息选项，会检测IP的所属地区和服务商，但是会降低检\n"
		    		+ "   测的速度，如非必要，不推荐使用。\n"
		    		+ "5.用户可导入自己的数据文件：在选项->导入 选择要导入的文件，程序\n"
		    		+ "   会自动解析文件中的IP，在程序目录下生成数据文件。在检测开始前，\n"
		    		+ "   勾选用户导入数据选项，点击开始即可。\n"
		    		+ "6.导入数据文件时，会自动去重，因此IP数可能少于文件中IP数。\n"
		    		+ "7.数据源的选择：程序数据源IP量大，但是数据固定，仅用作长时间筛\n"
		    		+ "   选；网络实时数据IP量少，获取速度受网络影响，但是数据较新，适合\n"
		    		+ "   短时间的随取随用；\n"
		    		+ "8.程序运行完成后，可使用结果数据设置本地代理，支持自动切换IP，可\n"
		    		+ "   自定义间隔时间。（暂不可用）\n"
//		    		+ "9.程序设置的本地代理，不支持火狐浏览器！\n"
		    		+ "\n"
		    		+ "=============================================\n"
		    		+ "本程序仅用作学习交流使用，请勿用作非法操作。";
    public static List<String> ips = Collections.synchronizedList(new ArrayList<String>());
//    public static Set<String> result = Collections.synchronizedSet(new HashSet<String>());
    public static List<DataModel> result2 = Collections.synchronizedList(new ArrayList<DataModel>());
    public static int checkedNum = 0;
    public static int total = 0;
    public static int flag = 0;
    public static boolean run = true;
    public static final String REG = "((\\d{1,3})\\.(\\d{1,3})\\.(\\d{1,3})\\.(\\d{1,3})\\:\\d{1,5})";
    public static int proxyType;
    
    public static void init(){
    	ips = Collections.synchronizedList(new ArrayList<String>());
//        result = Collections.synchronizedSet(new HashSet<String>());
        result2 = Collections.synchronizedList(new ArrayList<DataModel>());
        checkedNum = 0;
        total = 0;
        flag = 0;
        run = true;
        proxyType = 0;
    }
    
}
